Printing based on user specified formatted print and according to capability of the printer

ABSTRACT

Conventionally, it has been impossible to perform a formatted print precisely corresponding to functions of various printers. To solve this problem, formatted print data and printer capability data are stored. When a print instruction is issued, formatted print candidates are presented based on the formatted print data. When a formatted print is selected from these candidates, the printer capability data is referenced to set a combination of print conditions for performing the formatted print and actually perform printing. The printer capability data is stored for each printer model. Therefore, a proper print condition can be set for each printer model to perform a given formatted print. As a result, it becomes possible to perform a formatted print precisely corresponding to printer functions.

BACKGROUND OF THE INVENTION

The present invention relates to a print control apparatus, a printcontrol method, a print control program, a medium for recording theprint control program, an image processing apparatus, and an imageprocessing computer.

In recent years, printers tend to have many functions to satisfy users'diverse needs. For example, there are developed printers capable ofprinting in various modes such as printing with no print margins andconverting colors so as to more vividly develop colors than theoriginal. However, providing a printer with many functions tends toincrease the number of items for setting print conditions needed forprinting. To free users from inconvenience of setting many printconditions, the printer may be configured to be capable of implementingthe formatted print specified by a sensuous expression such as“beautiful mode” to broadly express the print condition.

The above-mentioned conventional print control apparatus has beensubject to the following problems.

That is, printer functions have progressed remarkably. There have beendeveloped many printers equipped with new functions. It has beenimpossible to provide formatted prints corresponding to variousprinters. It is very complicated to modify factory-default formattedprint items in accordance with the printer function enhancement. Whenold and new models coexist and one printer is configured to a printcondition according to the formatted print, the other printer isincapable of printing. The printer functions cannot be used fully.

SUMMARY OF THE INVENTION

The present invention has been made in consideration of the foregoing.It is therefore an object of the present invention to provide a printcontrol apparatus, a print control method, a print control program, anda medium recording the print control program capable of formatted printexactly corresponding to printer functions.

To achieve the above-mentioned object, the present invention dynamicallyconfigures print conditions depending on printer capabilities inresponse to a specified formatted print. Therefore, the presentinvention can precisely comply with the printer function enhancement. Ofcourse, the present invention can not only comply with the functionenhancement for one model, but also set proper print conditions for aplurality of models according to function differences. It just needs todynamically configure print conditions according to printer capabilitiesand acquire information about capabilities of a printer to performprinting. Further, it may be preferable to acquire information aboutcapabilities of a connected printer. Alternatively, it may be preferableto acquire information about capabilities of a printer where a printerdriver is installed to control printers.

The present invention can adopt various printer capabilitiescorresponding to print conditions. For example, each printer supportsthe following capabilities to be adopted such as ink types (color,monochrome, and the like), paper sizes, media (whether or not papertypes or CD labels are printable), print margins, print qualities, colormanagement types (whether or not automatic adjustment is available,colors exceeding the display's color gamut can be used, and the like),whether or not the automatic paper cut can be used, whether or not thebidirectional print is available, and whether or not the print directioncan be changed (vertical or horizontal printing).

According to another mode of the present invention, printer capabilitydata is stored for each model of a printer to indicate print conditionsthat can be set for the printer. Conditions for a formatted print areconfigured within a range of print conditions that can be set for amodel of printers to perform printing. It is possible to perform theformatted print precisely corresponding to the printer model. Printconditions are configured within a range of print conditions specifiablefor a model of printer to perform printing. Consequently, it is possibleto dynamically configure print conditions according to the printer'scapabilities.

Of course, the present invention can not only comply with the functionenhancement for one model, but also set proper print conditions for aplurality of models according to function differences. It is possible toadopt various conditions such as the above-mentioned ink types, papersizes, and the like as print conditions. To be capable of the formattedprint, it just needs to determine conditions specifiable for printermodels with respect to print condition items. Specifiable conditions maybe stored. Flags may be used to identify specifiable and unspecifiableconditions. Various constructions can be adopted.

For example, paper sizes are available as print condition items. Let usassume that the print is possible for the A3 size but is possible for A4and postcard sizes. In such case, information of “A4, postcard” may bestored as the specifiable print condition. Alternatively, it may bepreferable to store information of flags “011” corresponding to A3, A4,and postcard sizes in order. Generally, specifiable print conditionsvary with models. Print conditions are stored correspondingly to modelsto enable settings for the respective models. Of course, a user may needto only one model of printers. A printer driver for only one model maybe installed on the computer. In these cases, it is sufficient to storethe printer capability data for one model.

A formatted print data storage unit just needs to be able to store theformatted print data to provide formatted print candidates as formattedprint options. A user just needs to be able to select formatted printsprovided by a formatted print specification acceptance unit.Accordingly, there may be available various modes of candidatesincluding specification of several print condition items such as papersizes, inks, and sensuous expressions representing printout results. Thesensuous expressions may include “highest image quality,” “verybeautiful,” and the like. When printers are ready for printing, thereare evident needs for obtaining results represented by sensuousexpressions such as “beautiful” and “fast” as well as print paper types,sizes, and the like. The present invention is convenient enough to beable to perform printing precisely corresponding to models even thoughthe formatted print is represented with sensuous expressions.

The formatted print specification acceptance unit just needs to extractand present formatted print candidates selectable for models of printersto perform printing. The formatted print specification acceptance unitjust needs to accept the specification. Various constructions can beadopted to extract formatted print candidates. For example, oneconstruction is to exclude and not to present formatted print candidatesunselectable for models of printers to perform printing. Anotherconstruction is to provide but dim such formatted print candidates tomake them unselectable. The above-mentioned printer capability data maybe referenced to determine whether or not formatted prints can beselected for a printer to perform printing. When an unselectableformatted print is selected, an error indication may be generated toactually prevent the unselectable formatted print from being selected. Aspecified display apparatus such as a CRT may be used to displayformatted print candidates. Input devices such as a keyboard and a mousemay be used to accept selection of formatted print candidates.

A print condition setup unit configures a combination of printconditions to perform a specified formatted print so as to be able toconfigure conditions within a range of print conditions specifiable formodels of printers capable of printing. As a result, it is possible toconfigure print conditions precisely corresponding to functions ofvarious models. The range of specifiable print conditions depends oneach print item of each model. Whether or not the print condition isspecifiable depends on whether or not the corresponding model canperform printing under that condition. For example, when a printer iscapable of using paper sizes smaller than or equal to A4, the printercannot use the A3 size.

Therefore, A3-size printing on this printer is outside the range ofspecifiable print conditions. When the formatted print is to beperformed, the print condition may not be uniquely determined for agiven associated item. The print condition can be determined for thatitem by choosing from any of specifiable print conditions. When a printcondition item is outside the range of specifiable print conditions, allcondition items need not be assumed to be incapable of printing forstrictness. It may be preferable to approximate to a specified formattedprint result by appropriately specifying the condition within the rangeof print conditions specifiable for each model.

Further, the formatted print data may include print conditions toimplement printing of formatted print candidates. In this manner, someprint conditions can be determined at a time point when each formattedprint candidate is specified. Since the above-mentioned print conditionsetup unit configures print conditions, the formatted print data mayinclude part of all print condition items. In addition, the formattedprint data includes data indicating names for specifiably displayingformatted print candidates when provided as formatted print options.

That is, the formatted print specification acceptance unit can presentthe corresponding name and accept the formatted print specification.Since the formatted print data includes the print condition and dataindicative of that name, it is possible to provide formatted print namescomprising specific print conditions. The formatted print becomesavailable under the name of “reverse side of postcard for ink-jetprinter,” for example. When the formatted print name corresponds to theprint condition itself for the formatted print, the print conditionincluded in the name may be assumed to be mandatory. In such case, whenthere is no such printer as being able to satisfy the condition, it ispossible to determine that the formatted print is infeasible beforeaccepting the formatted print specification.

When a specific formatted print is to be performed, a specific printcondition item may require a specific print condition. In considerationfor this, a required print condition is stored correspondingly to eachformatted print candidate. When the required cannot be specified for aprinter to perform printing, it becomes possible to determine that theformatted print is infeasible before accepting the formatted printspecification. The print condition setup unit may not need to configureconditions. Print conditions may be predetermined for specific items.When “no edge” is specified for the formatted print, for example, theprint margin must be “0” or less. When “postcard address” is specified,for example, a specific value need not be required for the print margin.

Moreover, print conditions may be selected for respective setup items inthe order of priorities to provide the print condition for the formattedprint. This construction can configure more preferable conditions when aplurality of conditions can be specified for each print condition setupitem. As a result, it is possible to obtain the most preferable resultas a result of the formatted print itself implemented by a combinationof a plurality of print conditions.

Furthermore, the printer driver is a module that is installed in thecomputer's OS and the like to control the printer. In many cases, aninquiry can be issued to the printer driver to acquire printer functionsand selectable print conditions. The inquiry may be often implementablevia a software interface.

Issuing an inquiry to the printer driver makes it possible to veryeasily acquire a print conditions selectable for the printer. Storingthe print condition makes it possible to allow a computer functioning asthe print control apparatus to reliably acquire the print conditionspecifiable for each model of printer. It is possible to configure theprint condition to perform the formatted print that reliably makes themost of each printer's functions.

On the other hand, a condition specifiable for a given setup itemdepends on a condition for another setup condition. For example, thepaper size “A4” disables the print condition of no white edges. Thepaper size “A5” enables the print condition of no white edges. Thepresent invention is also applicable in such case. As a result, printconditions for the present invention can include not only conditionsdependent only on printer models, but also conditions dependent on eachother.

The above-mentioned technique dynamically configures print conditionsfor a specified formatted print but is not limited to a solid apparatus.The technique is also effective as the invention of the method. Theabove-mentioned print control apparatus may be available standalone ormay be built in a given device. The concept of the invention includesvarious modes. The present invention can be variously embodied assoftware or hardware.

When the concept of the invention is embodied as the software for theprint control apparatus, the present invention obviously exists and isused on a recording medium that records the software. For example, thepresent invention can be embodied as a print control program and as amedium that records the print control program. Of course, the recordingmedium may be a magnetic recording medium, a magnetic optical recordingmedium, on any medium to be developed in the future.

The same completely applies to duplication stages such as a primaryduplicate copy, a secondary duplicate copy, and the like. Unlike theabove-mentioned medium, a communication line may be used as adistribution method. In this case, the present invention is applied tothe communication line as a transmission medium.

Other and further objects, features and advantages of the invention willappear more fully from the following description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 schematically shows the hardware configuration of a systemconstructing a print control apparatus;

FIG. 2 schematically shows the configuration of a main control systemimplemented by a computer of the print control apparatus;

FIG. 3 shows an example of formatted print data;

FIG. 4 shows an example of printer capability data;

FIG. 5 diagrams print operations to be performed;

FIG. 6 is a flowchart showing a print process;

FIG. 7 is a flowchart showing a process to create printer capabilitydata; and

FIG. 8 is a flowchart showing a modification of the print process.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The embodiment of the present invention will be described in thefollowing order.

(1) Construction of the present invention

(2) Structures of formatted print data and printer capability data

(3) Print process and operations

(1) Construction of the Present Invention

FIG. 1 schematically shows the hardware configuration of a systemconstructing a print control apparatus according to the presentinvention. FIG. 2 schematically shows the configuration of a maincontrol system implemented by a computer of the print control apparatus.According to the embodiment, the print control apparatus is constructedby the computer that controls a printer. When the printer is constructedto be capable of printing standalone, the print control apparatus isconstructed by a section that is responsible for processing queriesabout the formatted print and print jobs inside the printer.

A computer 10 has a CPU 11 as a core of computation. The CPU 11 iscapable of accessing ROM 13 storing BIOS and RAM 14 via a system bus 12.The system bus 12 is connected to external storages such as a hard diskdrive (hereafter referred to as an HDD) 15, flexible disk drive 16, anda CD-ROM drive 17. The HDD 15 stores an OS, an application program(hereafter referred to as an APL), a print control module, and the likewhich are to be transferred to the RAM 14. The CPU 11 appropriatelyaccesses the ROM 13 and the RAM 14 to execute the software. The CPU 11uses the RAM 14 as a temporary work area to execute various programs.

The computer 10 connects with input operation devices such as a keyboard31 and a mouse 32 via a serial communication I/O 19 a. The computer 10also connects with a display 18 for displaying data via a video board(not shown). The computer 10 is connectable to a printer 40 via a USBI/O 19 b. The computer 10 is described with the simplified configurationand can use the general configuration as a personal computer. Of course,the present invention is not limited to personal computers. Theembodiment is applied to a so-called desktop computer and may be alsoapplied to notebook or mobile computers. The present invention is notlimited to the connection interface between the computer 10 and theprinter 40 and may use not only various connection modes such as SCSIand parallel interfaces, but also any connection mode that may bedeveloped in the future.

In this example, the HDD 15 stores programs and the like. The recordingmedium is not limited to the HDD 15 and may be a flexible disk 16 a or aCD-ROM 17 a. The computer 10 reads a program recorded on the recordingmedium via the flexible disk 16 a or the CD-ROM 17 a and installs theprogram on the HDD 15. The program is read from the HDD 15 to the RAM 14to control the computer. The present invention is not limited to theabove-mentioned recording media and may use magnetic optical disks.Available semiconductor devices include nonvolatile memory such as flashcards. When the program is downloaded by accessing an external fileserver via a modem or a communication line, the present invention isapplied by using the communication as a transmission medium.

The printer 40 performs printing under control of a printer driverinstalled in the computer 10. As shown in FIG. 2, the computer 10according to the embodiment is installed with printer drivers (PRTDRV)21 a through 21 c, an input device driver (DRV) 22, and a display driver(DRV) 23 in an OS 20. According to the embodiment, a plurality ofPRTDRVs 21 a through 21 c are installed. The present invention is veryeffective when applied to a situation where one computer 10 can beconnected to a plurality of printers. However, the plurality of PRTDRVs21 a through 21 c need not necessarily be installed. The number ofprinter drivers to be installed is not limited to three. The displaydriver DRV 23 controls display of image data and the like on the display18. The input device DRV 22 receives code signals from the keyboard 31and the mouse 32 via the serial communication I/O 19 a to acceptspecified input operations.

An APL 25 is an application program capable of retouching a color imageand the like. Using the APL 25, a user can use the above-mentioned inputoperation devices to print the color image on the printer 40. Accordingto a user's instruction, the APL 25 reads image data 15 a recorded onthe HDD 15 into the RAM 14. The APL 25 allows the display DRV 23 todisplay an image generated from the image data 15 a on the display 18.When the user operates the input device, the APL 25 acquires operationcontents via the input device DRV 22 to interpret the operationcontents. According to the operation contents, the APL 25 performsvarious processes such as print instructions and retouching.

When the APL 25 issues a print instruction, a print control module 50and a software I/F 60 are activated to accept the formatted instructionto print an image associated with the print instruction. To perform theformatted print as specified, the print control module 50 and thesoftware I/F 60 set a print condition and pass this condition and theimage data 15 a to a proper PRTDRV. For this purpose, the print controlmodule 50 has a formatted print list creation module 51 and a printcondition setup module 52. The I/F 60 has an available printeracquisition module 61 and a printer capability data acquisition module62. The HDD 15 stores formatted print data 15 b and printer capabilitydata 15 c.

The formatted print list creation module 51 performs a process toprovide formatted print candidates when the APL 25 issues a printinstruction. That is, the formatted print list creation module 51obtains a type of the printer 40 used for printing from the availableprinter acquisition module 61 for the software I/F 60 to be described.The formatted print list creation module 51 references the formattedprint data 15 b indicating formatted print candidates. The formattedprint list creation module 51 also creates a list of formatted printcandidates selectable for the type of the printer 40.

When creating the list, the embodiment excludes a formatted printunexecutable on the printer 40 being used. For this reason, theformatted print data 15 b has a data structure to be described andcomprises required data and optional data. The formatted print listcreation module 51 references required data for each formatted print inthe formatted print data 15 b. The printer 40 being used may not have afunction to perform printing according to the print condition specifiedby the required data. In such case, the associated formatted print isexcluded from the candidates.

When issuing the print instruction, the APL 25 first provides a list offormatted print candidates. The user of the APL 25 can visually checkthe list on the display 18 and specify the formatted print using themouse 32, for example. The specification of the formatted print ispassed to the print condition setup module 52. The print condition setupmodule 52 configures a print condition for executing the specifiedformatted print. The print condition setup module 52 referencesformatted print data for the specified formatted print and configuresthe optional data.

When configuring the optional data, the print condition setup module 52references the prestored printer capability data 15 c. That is, theprinter capability data 15 c stores print conditions specifiable forprinters according to each printer model. Reference to the printercapability data 15 c can ensure conditions specifiable for the printer40 with respect to each print condition setup item. Accordingly, anycondition described in the printer capability data 15 c enables printingon the printer 40.

The print condition setup module 52 adopts conditions of each itemaccording to predetermined priorities to configure the print condition.According to the embodiment, the priority is assigned to each setupitem. The print condition setup module 52 adopts conditions specifiablefor the printer 40 in the descending order of priorities of course, theother techniques may be used to predetermine priorities. For example,priorities may be changed for each setup item according to printermodels. Different priorities may be assigned to different formattedprints. Various modes can be adopted.

When the print condition is determined, its contents are passed to thePRTDRV that controls the printer to execute printing. When the APL 25 isused to print an image, its image data is passed to the PRTDRV at thesame time. The PRTDRV configures the print conditions appropriate forprinting. The PRTDRV applies color conversion or halftoning to the imagedata so as to satisfy the print condition and outputs print data to theprinter 40. Consequently, the printer 40 produces a printout resultexactly corresponding to the specified formatted print.

The software I/F 60 has a module that accesses PRTDRVs 21 a through 21 cto extract necessary information. The available printer acquisitionmodule 61 obtains a printer that is connected to the computer 10 and isready to perform printing in accordance with a print instruction fromthe APL 25. As shown in FIG. 2, a plurality of PRTDRVs 21 a through 21 care installed. In such situation, the available printer acquisitionmodule 61 determines which of the PRTDRVs 21 a through 21 c is used forprinting on the printer 40. The available printer acquisition module 61passes an available printer to the formatted print list creation module51.

According to the embodiment, the available printer acquisition module 61detects one of the PRTDRVs 21 a through 21 c to be assigned to a printeras a “default printer.” The available printer acquisition module 61assumes the printer under control of the PRTDRV to be an active printer.Of course, the other various modes can be adopted to determine availableprinters. For example, the APL 25 may inquire about a printer to be usedtogether with issuance of the print instruction and accept a response.

The printer capability data acquisition module 62 generates printercapability data to be saved on the HDD 15. The printer capability dataacquisition module 62 accesses the PRTDRVs 21 a through 21 c installedin the OS 20 to obtain specifiable print conditions, i.e., functionsprovided for printers under control of the PRTDRVs 21 a through 21 c.When obtaining specifiable print conditions, the printer capability dataacquisition module 62 classifies the conditions into the PRTDRVs 21 athrough 21 c and saves them as printer capability data in the HDD 15.The PRTDRVs 21 a through 21 c are programs to control specific printers.Since the print conditions are saved according to the classificationinto the PRTDRVs 21 a through 21 c, the print conditions can be storedcorrespondingly to printer models.

According to the embodiment, the PRTDRVs 21 a through 21 c have thesoftware I/F as shown in FIG. 2. The available printer acquisitionmodule 61 and the printer capability data acquisition module 62 providedfor the software I/F 60 interchange data with each other via thesoftware I/F. There is a scheme of using function calls so that thesoftware I/F for the PRTDRVs 21 a through 21 c can return data such asIDs. The scheme facilitates interchange of data and generation ofprinter capability data, and the like.

(2) Structures of Formatted Print Data and Printer Capability Data

Using a specific example, the following details structures of theformatted print data and the printer capability data used in theabove-mentioned construction. FIG. 3 shows an example of formatted printdata. FIG. 3 schematically shows the formatted print data structure. Inthis example, required data is shown in an upper part of FIG. 3 andcomprises three pieces of data (ink, paper (size), and media (type).Optional data is enclosed in a broken line below. The optional datadepends on priorities as mentioned above. The formatted print data has aspecified name. The name is displayed when the formatted print listcreation module 51 provides a list of formatted print candidates.

According to the embodiment, the required data closely corresponds tothe name. The required data items correspond to those needed to performthe formatted print indicated by the name. Print conditions arepredetermined as default values so as to perform the formatted print.The example of FIG. 3 is used to print a photo on the reverse side of apostcard for ink-jet printers. For this purpose, the conditions includecolor ink for the ink, a postcard for the paper, and super-fine paper,i.e., a specific type of paper for the media. Accordingly, thesesettings enable printing based on the formatted print configured as“reverse side of postcard for ink-jet printer (photo).”

Of course, the name and the required data are provided as an example.The other various modes may be adopted. For example, it is possible todefine formatted prints with various names such as “postcard address”,“A4 super image quality”, and “A4 glossy paper with no white edges.”According to the present invention, the formatted print name may not bestrictly associated with the required data. For example, formatted printnames may include somewhat ambiguous and sensuous expression such as “A4super image quality.” In this case, the expression “super image quality”does not uniquely define the print condition. However, the formattedprint named “A4 super image quality” becomes implementable by settingconditions to improve the image quality according to the above-mentionedpriorities.

For the PRTDRV to actually perform printing, it is necessary toconfigure print condition items other than the required data. Theprinter capability data 15 c is referenced to configure each item in theoptional data. FIG. 4 shows an example of printer capability data. FIG.4 schematically shows the printer capability data structure. As shown inFIG. 4, specifiable print conditions are registered for each PRTDRVinstalled in the OS 20. When the APL 24 issues print instructionaccording to the embodiment, the HDD 15 may not store the printercapability data for the PRTDRV to be used for print execution. In suchcase, the printer capability data acquisition module 62 becomes activeto obtain the printer capability data.

The example in FIG. 4 shows registration of the printer capability dataincluding “A4, A5, postcard” as the paper types for the PRTDRV 21 a.That is, the printer under control of the PRTDRV 21 a can print on anyof paper types such as “A4, A5, and postcard.” According to the presentinvention, the print condition items can depend on each other. FIG. 4exemplifies this. That is, as print condition items, the paper and theprint margin depend on each other. The print margin is specified with aflag and is defined for each of “A4, A5, and postcard.”

In this example, available print margins are “standard, bottomenlargement, no white edges sideways, and no white edges.” The printmargins in FIG. 4 are indicated by flags. The flag set to “1” enablesthe setting. The flag set to “0” disables the setting. As shown in FIG.4, the paper size “A4” permits the settings of “standard and bottomenlargement.” The paper sizes “A5 and postcard” permit all settings of“standard, bottom enlargement, no white edges sideways, and no whiteedges.” The same model of printers under control of the PRTDRV 21 a canset different print margins depending on paper sizes. In thin meaning,the print condition items depend on each other. The bottom enlargementsetting decreases the margin at the bottom of the paper to enlarge aprint area toward the bottom of the paper.

As mentioned above, the printer capability data describes printconditions specifiable for each PRTDRV. The print condition setup module52 determines the formatted print data based on information of theprinter capability data and the priority. The optional data shown at thebottom of FIG. 3 is not limited to a specific setting during executionof the formatted print named “reverse side of postcard for ink-jetprinter (photo).” Accordingly, the optional data is determined by thepriority.

According to the embodiment, for example, let us assume that the printmargins are defined as “no white edges, no white edges sideways, bottomenlargement, and standard” in the ascending order of priorities. Theprinter capability data permits all the settings of “standard, bottomenlargement, no white edges sideways, and no white edges” for thepostcard paper. Accordingly, “no white edges” is selected as the highestpriority and is used for the print margin. The A4 paper is permitted touse only the settings “standard and bottom enlargement.” In this case,the more highly prioritized “bottom enlargement” is assumed.

The print condition setup module 52 can determine the optional data byreferencing the printer capability data 15 c as mentioned above. Inaddition, the other various items can be defined as conditions for theprinter capability data. For example, a print quality item can beassigned a plurality of different conditions such as the resolution andthe print speed. In an item of color management type, it is possible todetermine whether or not to automatically adjust colors by means ofimage processing, whether or not to use colors exceeding the display'scolor gamut, and the like. It is possible to determine whether or not touse the automatic paper cut, enable the bidirectional printing, andchange the print direction (vertical or horizontal printing). Anothercondition can be the number of colors (six, seven, and the like) to beused for the printer. Still another condition can be provided todetermine whether or not to perform image processing for reproducing theobject's color tone according to situations of photographing based onheader information compliant with the Exif 2.2 standard (Exif is aregistered trademark of The Japan Electronics and Information TechnologyIndustries Association).

(3) Print Process and Operations

The following describes the process and operations of the embodimentaccording to the above-mentioned construction. FIG. 5 diagrams actualprint operations to be performed according to the present invention.FIG. 6 is a flowchart showing a print process. FIG. 5 shows screensdisplayed on the display 18 during execution of the APL 25. A screen 18a shows a screen example during execution of the APL 25. As mentionedabove, the APL 25 can retouch an image and the like and issue aninstruction to print the image. A user can instruct printing byselecting a print menu on the screen 18 a.

In response to the print instruction, the embodiment does not display aproperty screen for the PRTDRV associated with the default printer.Instead, the print control module 50 and the software I/F 60 areactivated in accordance with the process in FIG. 6. When the printinstruction is issued at Step S100, the print control module 50 and thesoftware I/F 60 are activated. At Step S105, the available printeracquisition module 61 detects the PRTDRV for the default printer out ofthe PRTDRVs 21 a through 21 c via the PRTDRV I/F to acquire the model ofthe active printer 40. The acquired model of the printer 40 is notifiedto the formatted print list creation module 51.

At Step S110, the available printer acquisition module 61 determineswhether or not the HDD 15 already stores the printer capability data 15c for the model of the printer 40. When that data is not stored, aprinter capability data creation process is performed at Step S115. AtStep S120, the formatted print list creation module 51 references theformatted print data 15 b on the HDD 15 and excludes formatted printsunavailable to the acquired printer 40 from the list. At Step S125, theformatted print list creation module 51 notifies the APL 25 of formattedprint candidates. As a result, the process activates a GUI to displaythe formatted print candidates. The screen of the display 18 changes toa screen 18 b as shown in FIG. 5.

That is, the screen lists names stored in the formatted print data 15 b.Visually checking the screen 18 b, the user can operate the mouse 32 andthe like, select any of the formatted print names using the pointer, andclick the mouse button to specify the formatted print. At Step S130, theprint condition setup module 52 accepts the specified formatted print.Conditions other than the required data are not settled in the formattedprint data for the accepted formatted print. At Step S135, the processreferences predetermined priorities. At Step S140, the process assignshighly prioritized conditions to the print condition items in theoptional data to generate print condition setup data comprising acombination of print condition settings.

At Step S145, the generated print condition setup data is passed to thePRTDRV that controls the above-mentioned active printer 40. At StepS150, the APL 25 passes image data corresponding to the printinstruction to the PRTDRV. The PRTDRV generates print data to performprinting according to the print condition and outputs the print data tothe printer 40. As a result, the formatted print precisely correspondsto the function of the active printer 40. The printer 40 generates aprintout result in accordance with the formatted print as specified bythe user.

FIG. 7 is a flowchart of the printer capability data creation processperformed by the printer capability data acquisition module 62 at StepS115 as mentioned above. According to the embodiment, the availableprinter acquisition module 61 performs the printer capability datacreation process when the HDD 15 does not store the printer capabilitydata 15 c about types of the printer 40 to perform printing of course,the printer capability data creation process may be performed when thePRTDRV is installed, for example.

At Step S200, the process sets a print condition item to be acquiredfrom the PRTDRV. At Step S210, the process calls a function to acquire acondition for the corresponding item. As a result, the function returnsan ID indicating specifiable print conditions via the PRTDRV's softwareI/F. This makes it possible to identify the specifiable printconditions. At Step S220, the process determines whether or not items ofthe print condition depend on those of the other print conditions. Whenit is determined that items of the print condition depend on those ofthe other print conditions, the process associates the setup items witheach other based on the dependence at Step S230 to store the setup itemsas printer capability data. That is, the process associates a pluralityof print condition items with each other as shown in FIG. 4.

At Step S240, the process determines whether or not print conditions areconfigured for all print condition items that can be acquired from thePRTDRV. The process is repeated from Step S200 and later until printconditions are determined to be configured for all the print conditionitems at Step S240. In this manner, the process sequentially records theprinter capability data 15 c about types of the printer 40 to performprinting. As a result, the database as shown in FIG. 4 is created withrespect to the printer capability data about the PRTDRVs.

The present invention can be interpreted as an image processingapparatus according to the following process. That is, at Step S100, theprocess can display the print menu and accept a print instruction inresponse to the selection operation. At Steps S105 through S125, theprocess displays candidates for available formatted prints on aspecified printer based on the accepted print instruction. At Step S130,the process accepts the specification of any formatted printcorresponding to a selection operation associated with the display. AtSteps S135 and S140, the process generates a print condition for theprinter corresponding to the specified formatted print. At Steps S145and S150, the process generates print data to perform printing based onthe print condition.

At Step S105, the available printer acquisition module 61 acquiresdefault printer models and creates a list of formatted prints and thelike on the assumption that the acquired printer 40 is used forprinting. As shown in a flowchart of FIG. 8, the available printeracquisition module 61 at Step S106 may detect any one of the registeredPRTDRVs 21 a through 21 c so that the detected PRTDRV can correspond toa printer capable of printing with the highest quality. Variousviewpoints are available concerning criteria about the print quality. Asan example, the print density is most highly prioritized and then thenumber of ink colors is taken into consideration. This technique can beused to determine the order of qualities. The available printeracquisition module 61 can acquire these pieces of information by issuingan inquiry to the PRTDRVs 21 a through 21 c.

When detecting the PRTDRV, the process proceeds at Step S110 and latersequentially such as displaying the list of formatted prints based onthe printer 40 corresponding to the detected PRTDRV.

Further, at Step S107, the process may determine whether or not thecurrently active printer 40 differs form the printer capable of printingwith the best quality. When they differ from each other, the process maytemporarily assume the printer capable of printing with the best qualityto be the currently active printer. At Step S109, the process may set aflag. After printing, the process may reference the flag at Step S151.When the flag is set, at Step S152, the process may reconfigure theprinter 40 to be the active printer.

As mentioned above, the present invention stores the formatted printdata and the printer capability data. When a print instruction isissued, the present invention provides formatted print candidates basedon the formatted print data. When a formatted print is selected fromthese candidates, the present invention references the printercapability data. The present invention configures a combination of printconditions for performing the formatted print and performs the print.The printer capability data is stored for each printer model. Therefore,it is possible to specify a proper print condition for each printermodel to perform a given formatted print. As a result, it becomespossible to perform the formatted print precisely corresponding to theprinter function.

As mentioned above, the present invention dynamically configures printconditions depending on printer capabilities in response to a specifiedformatted print. The present invention can precisely comply with theprinter function enhancement.

The foregoing invention has been described in terms of preferredembodiments. However, those skilled, in the art will recognize that manyvariations of such embodiments exist. Such variations are intended to bewithin the scope of the present invention and the appended claims.

1. A print control apparatus which allows a printer to perform printingin accordance with a print instruction issued from an applicationprogram, the print control apparatus comprising: a printer capabilitydata storage unit that acquires printer capability data by issuing aninquiry to a printer driver to control the printer and stores theprinter capability data of each model of printer, wherein the printercapability data indicates capability of the printer; a printer acquiringunit that acquires a model of the printer used for printing when theapplication program issues the print instruction; a formatted print listcreation unit that extracts only formatted prints containing requiredprinting conditions executable by the printer used for printing out of aplurality of formatted prints that is respectively composed of requiredprinting conditions and optional printing conditions, and displays alist of the extracted formatted prints on a display; a formatted printspecification acceptance unit that accepts a selection of a formattedprint in the list displayed on the display; a print condition setup unitthat sets the optional printing conditions of the formatted printselected from the list within a range of capability of the printer usedfor printing by referring to the printer capability data of the modelthat is acquired by the printer acquiring unit; and a printer driverthat allows the printer used for printing to perform printing under therequired printing conditions of the formatted print selected from thelist and the optional printing conditions set by the print conditionsetup unit.
 2. The print control apparatus according to claim 1, whereinsaid formatted print list creation unit displays a name for specifyingeach of the extracted formatted prints in the list.
 3. The print controlapparatus according to claim 1, wherein said printer capability datadescribes print conditions configurable on the printer and contains apriority for each of the print conditions; and wherein said printcondition setup unit sets a print condition with higher priority amongprint conditions described in the printer capability data as theoptional printing conditions.
 4. The print control apparatus accordingto claim 1, wherein said printer capability data defines a printcondition so that a condition for a given setup item depends on acondition for another setup item.
 5. A print control method of allowinga printer to perform printing in accordance with a print instructionissued from an application program, said method comprising: acquiring amodel of the printer used for the printing when the application programissues the print instruction; extracting only formatted printscontaining required printing conditions executable by the printer usedfor the printing out of a plurality of formatted prints that isrespectively composed of required printing conditions and optionalprinting conditions; displaying a list of the extracted formatted printson a display; accepting a selection of a formatted print in the listdisplayed on the display; setting the optional printing conditions ofthe formatted print selected from the list within a range of capabilityof the printer used for the printing by referring to printer capabilitydata of the model that is acquired, wherein the printer capability datais stored in a specified storage for each model of printer by issuing aninquiry to a printer driver to control the printer and indicatescapability of the printer; and allowing the printer used for printing toperform printing under the required printing conditions of the formattedprint selected from the list and the optional printing conditions thatare set.
 6. The print control method according to claim 5, furthercomprising: displaying a name for specifying each of the extractedformatted prints in the list.
 7. The print control method according toclaim 5, wherein said printer capability data describes print conditionsconfigurable on the printer and contains a priority for each of theprint conditions; and wherein the setting of the optional printingconditions includes setting a print condition with higher priority amongprint conditions described in the printer capability data as theoptional printing conditions.
 8. The print control method according toclaim 5, wherein said printer capability data defines a print conditionso that a condition for a given setup item depends on a condition foranother setup item.
 9. A computer-readable storage medium having a printcontrol program stored thereon, the print control program allowing aprinter to perform printing in accordance with a print instructionissued from an application program, and the print control programenabling a computer to implement: a function of acquiring a model of theprinter used for the printing when the application program issues theprint instruction; a function of extracting only formatted printscontaining required printing conditions executable by the printer usedfor the printing out of a plurality of formatted prints that isrespectively composed of required printing conditions and optionalprinting conditions; a function of displaying a list of the extractedformatted prints on a display; a function of accepting a selection of aformatted print in the list displayed on the display; a function ofsetting the optional printing conditions of the formatted print selectedfrom the list within a range of capability of the printer used for theprinting by referring to printer capability data of the model that isacquired, wherein the printer capability data is stored in a specifiedstorage for each model of printer by issuing an inquiry to a printerdriver to control the printer and indicates capability of the printer;and a function of allowing the printer used for printing to performprinting under the required printing conditions of the formatted printselected from the list and the optional printing conditions that areset.
 10. An image processing apparatus which generates print data forprinting by a printer in accordance with a print instruction issued froman application program, the image processing apparatus comprising: aprinter capability data storage unit that acquires printer capabilitydata by issuing an inquiry to a printer driver to control the printerand stores the printer capability data of each model of printer, whereinthe printer capability data indicates capability of the printer; aprinter acquiring unit that acquires a model of the printer used for theprinting when the application program issues the print instruction; aformatted print list creation unit that extracts only formatted printscontaining required printing conditions executable by the printer usedfor printing out of a plurality of formatted prints that is respectivelycomposed of required printing conditions and optional printingconditions, and displays a list of the extracted formatted prints on adisplay; a formatted print specification acceptance unit that accepts aselection of a formatted print in the list displayed on the display; aprint condition setup unit that sets the optional printing conditions ofthe formatted print selected from the list within a range of capabilityof the printer used for printing by referring to the printer capabilitydata of the model that is acquired by the printer acquiring unit; and aprinter driver that generates print data for allowing the printer usedfor printing to perform printing under the required printing conditionsof the formatted print selected from the list and the optional printingconditions set by the print condition setup unit.
 11. An imageprocessing apparatus which generates a print data for printing by aprinter in accordance with a print instruction issued from anapplication program, the image processing apparatus comprising: aprinter capability data storage unit that acquires printer capabilitydata by issuing an inquiry to a printer driver to control the printerand stores the printer capability data of each model of printer, whereinthe printer capability data indicates capability of the printer; aprinter determining unit that, when the application program issues theprint instruction, determines whether or not there are available aplurality of printers capable of printing and, when they are available,determines a printer to be used for printing based on print quality; aformatted print list creation unit that extracts only formatted printscontaining required printing conditions executable by the printer usedfor printing out of a plurality of formatted prints that is respectivelycomposed of required printing conditions and optional printingconditions, and displays a list of the extracted formatted prints on adisplay; a formatted print specification acceptance unit that accepts aselection of a formatted print in the list displayed on the display; aprint condition setup unit that sets the optional printing conditions ofthe formatted print selected from the list within a range of capabilityof the printer used for printing by referring to the printer capabilitydata of a model of the printer used for printing; and a printer driverthat generates the print data for allowing the printer used for printingto perform printing under the required printing conditions of theformatted print selected from the list and the optional printingconditions set by the print condition setup unit.
 12. An imageprocessing computer which allows a printer to perform printing inaccordance with a printer instruction issued from an applicationprogram, said computer comprising: a printer capability data storagemodule that acquires printer capability data by issuing an inquiry to aprinter driver to control the printer and stores the printer capabilitydata of each model of printer, wherein the printer capability dataindicates capability of the printer; a printer acquiring module thatacquires a model of the printer used for printing when the applicationprogram issues the print instruction; a formatted print list creationmodule that extracts only formatted prints containing required printingconditions executable by the printer used for printing out of aplurality of formatted prints that is respectively composed of requiredprinting conditions and optional printing conditions, and displays alist of the extracted formatted prints on a display; a formatted printspecification acceptance module that accepts a selection of a formattedprint in the list displayed on the display; a print condition setupmodule that sets the optional printing conditions of the formatted printselected from the list within a range of capability of the printer usedfor printing by referring to the printer capability data of the modelthat is acquired by the printer acquiring module; and a printer driverthat generates print data for allowing the printer used for printing toperform printing under the required printing conditions of the formattedprint selected from the list and the optional printing conditions set bythe print condition setup module.